import request from './request'

export default {
    // 注册
    register(data) {
        return request.post('/user/register', data)
        // data参数：{ companyName, contact, username, password, captcha }
    },

    // 登录
    login(data) {
        return request.post('/user/login', data)
        // data参数：{ username, password }
    },

    // 获取个人信息
    getPersonalInfo() {
        return request.get('/user/info')
    },

    // 修改个人信息
    updatePersonalInfo(data) {
        return request.put('/user/info', data)
        // data参数：{ nickname, phone, email, gender }
    },

    // 修改密码
    updatePassword(data) {
        return request.put('/user/password', data)
        // data参数：{ oldPassword, newPassword }
    },

    // 超级管理员：获取用户列表
    getUserList(params) {
        return request.get('/user', { params })
        // params参数：{ name, phone, status, page, size }
    },

    // 超级管理员：创建用户
    createUser(data) {
        return request.post('/admin/users', data)
        // data参数：{ username, name, phone, status, role }
    },

    // 超级管理员：修改用户
    updateUser(id, data) {
        return request.put(`/admin/users/${id}`, data)
        // data参数：{ name, status, role }
    },

    // 超级管理员：删除用户
    deleteUser(id) {
        return request.delete(`/admin/users/${id}`)
    },

    // 发送重置密码验证码
    sendVerificationCode(data) {
        // data参数：{ contact }
        console.log('API: Sending verification code to', data.contact);
        // 模拟API调用
        return new Promise(resolve => {
            setTimeout(() => {
                resolve({ success: true, message: '验证码已发送' });
            }, 1000);
        });
    },

    // 重置密码
    resetPassword(data) {
        // data参数：{ contact, verifyCode, newPassword }
        console.log('API: Resetting password for', data.contact);
        // 模拟API调用
        return new Promise(resolve => {
            setTimeout(() => {
                resolve({ success: true, message: '密码重置成功' });
            }, 1000);
        });
    }
}